import cv2
import time
import os

# 打开摄像头
cap = cv2.VideoCapture(0)

# 检查摄像头是否正常开启
if not cap.isOpened():
    print("无法打开摄像头")
    exit()

# 获取文件夹中已存在的图像文件数量
existing_files = os.listdir('myphoto/')
count = len(existing_files)

# 初始化计数器
counts = 0

while counts < 8:
    # 读取图像帧
    ret, frame = cap.read()

    # 检查图像帧是否读取成功
    if not ret:
        print("无法读取图像帧")
        break

    # 保存图像为 JPG 文件并以数字命名
    img_name = f"./myphoto/{count}.jpg"
    cv2.imwrite(img_name, frame)
    print(f"保存图像：{img_name}")

    # 显示保存的图像
    cv2.imshow("Image", frame)

    # 等待一秒
    time.sleep(3)

    # 按下 'q' 键退出循环
    if cv2.waitKey(1) == ord('q'):
        break

    # 增加计数器
    counts += 1
    count  += 1

# 释放摄像头
cap.release()

# 关闭窗口
cv2.destroyAllWindows()